package com.quan.oss.common.aliyun;

import java.util.Date;
import java.util.List;

public class FilePage {

	/**
	 * 空间名称
	 */
	private String bucketName ;
	
	/**
	 * 文件名称
	 */
	private String key ;
	
	/**
	 * 文件大小
	 */
	private long size ;
	
	/**
	 * 响应请求内返回结果的最大数目
	 */
	private Integer maxKeys = 5 ;
	
	/**
	 * 本次查询结果的开始前缀
	 */
	private String prefix ;
	
	/**
	 * 文件的最后修改时间
	 */
	private Date lastModified ;
	
	/**
	 * 标明这次List Object的起点
	 */
	private String marker ;
	
	/**
	 * 下一次List Object的起点
	 */
	private String nextMarker ;
	
	/**
	 * 文件列表
	 */
	private List<FilePage> list ;

	public FilePage() {
	}

	public FilePage(String bucketName, Integer maxKeys, String prefix, String marker, String nextMarker) {
		super();
		this.bucketName = bucketName;
		this.maxKeys = maxKeys;
		this.prefix = prefix;
		this.marker = marker;
		this.nextMarker = nextMarker;
	}

	public FilePage(String bucketName, String key, long size, Date lastModified) {
		super();
		this.bucketName = bucketName;
		this.key = key;
		this.size = size;
		this.lastModified = lastModified;
	}

	public FilePage(String bucketName, String key, long size, Integer maxKeys, String prefix, Date lastModified, String marker, String nextMarker, List<FilePage> list) {
		super();
		this.bucketName = bucketName;
		this.key = key;
		this.size = size;
		this.maxKeys = maxKeys;
		this.prefix = prefix;
		this.lastModified = lastModified;
		this.marker = marker;
		this.nextMarker = nextMarker;
		this.list = list;
	}

	public String getBucketName() {
		return bucketName;
	}

	public void setBucketName(String bucketName) {
		this.bucketName = bucketName;
	}

	public String getKey() {
		return key;
	}

	public void setKey(String key) {
		this.key = key;
	}

	public long getSize() {
		return size;
	}

	public void setSize(long size) {
		this.size = size;
	}

	public Integer getMaxKeys() {
		return maxKeys;
	}

	public void setMaxKeys(Integer maxKeys) {
		this.maxKeys = maxKeys;
	}

	public String getPrefix() {
		return prefix;
	}

	public void setPrefix(String prefix) {
		this.prefix = prefix;
	}

	public Date getLastModified() {
		return lastModified;
	}

	public void setLastModified(Date lastModified) {
		this.lastModified = lastModified;
	}

	public String getMarker() {
		return marker;
	}

	public void setMarker(String marker) {
		this.marker = marker;
	}

	public String getNextMarker() {
		return nextMarker;
	}

	public void setNextMarker(String nextMarker) {
		this.nextMarker = nextMarker;
	}

	public List<FilePage> getList() {
		return list;
	}

	public void setList(List<FilePage> list) {
		this.list = list;
	}

	@Override
	public String toString() {
		return "FilePage [bucketName=" + bucketName + ", key=" + key + ", size=" + size + ", maxKeys=" + maxKeys + ", prefix=" + prefix + ", lastModified=" + lastModified + ", marker=" + marker + ", nextMarker=" + nextMarker + ", list=" + list + "]";
	}
	
}
